package _1_初级._1_循环._2_双循环;

import java.util.Scanner;

public class _3_输出图形_8_镂空三角形 {

    public static void main(String[] args) {

        // 行数
        int rowNum;
        // 列数
        int colNum;
        // 列数的一半
        int colNumHalf;

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入三角形的行数：");
        rowNum = scanner.nextInt();

        // 控制输出的行
        for (int i = 0; i < rowNum; i++) {
            // 按照规律求出每列的个数
            colNum = i * 5 - (i - 1);
            // 求出每列个数的一半
            colNumHalf = colNum / 2;
            // 控制输出的列

            // 透明三角形
            for (int j = 2 * (rowNum - 1 - i); j > 0; j--) {
                System.out.print(" ");
            }

            // 实体三角形
            for (int j = 0; j < colNum; j++) {

//                // 非首行并且最后一行
                if(i != 0 && i != rowNum - 1) {
                    // 如果是首列，中间列，最后一列
                    if (j == 0 || j == colNumHalf || j == colNum - 1) {
                        System.out.print("*");
                    } else {
                        System.out.print(" ");
                    }
                }
                else {
                    System.out.print("*");
                }
            }
            System.out.println();
        }
    }
}
